English

再谈汉字内码

1999-03-10 来源:光明日报 陈新 我有话说

我在春节前曾经写了一篇文章《别为乱码烦心》(详见2月3日的《光明日报》)。春节放假期间,我又看到了2月10日的那篇小读者的来信。的确,当IE4.0安装了微软的“繁体语言包”后,就可利用与原文中方法1类似的手段浏览BIG5码站点。由于当初成文时忽视了这一点,在此向王坤山小朋友表示感谢。

这件事促使我认真查阅了一下有关汉字编码的资料,写在这里以供大家探讨。

我们知道在计算机中是用二进制数字来对应字符集中的字符,而目前使用较普遍的是ANSI字符集,对应该字符集的二进制编码就称为ANSI码,DOS和Windows系统都使用了ANSI码。由于ANSI码是8位二进制数的单一字节编码集,最多只能表示256个字符,这就不能表示数量众多的汉字字符,因此一些使用汉字的国家和地区就在ANSI码的基础上按照一定的规则设计了不同的汉字编码集,以处理众多的汉字字符。为了让汉字编码集能够兼容ANSI码,从而在操作系统中正常使用,他们仍然采用单字节来表示ANSI字符,而用双字节来表示汉字字符。

由于一个系统中只能有一种汉字内码,所以该系统就不能识别其它规则的汉字内码字符——这是产生“汉字乱码”的根本原因。

目前因特网上的中文编码除了原文中提到的GB码和BIG5码外,还有HZ码、GBK码等。GB码是1980年国家公布的简体汉字编码方案,主要在中国内地和新加坡使用,也称国标码,它涵盖了大多数经常使用的汉字;BIG5码是针对繁体汉字的汉字编码,主要在台湾、香港地区和其他海外中文站点使用;GBK码只是GB码的扩展字符编码,它涵盖了许多生僻的汉字;HZ码则是在因特网上广泛使用的一种汉字编码;其他诸如ISO-2022CJK码、Unicode码均在因特网网络中有一定的使用范围,在此就不详述了。

长期以来,多种编码一直在网络上共存。不同于本系统内码的字符就不能在系统中正常显示。这种情况给中文信息交流带来了很多不便,因而提出了内码转换的问题。解决方法基本可以用笔者在《别为乱码烦心》一文中提出的4种方法和王坤山小朋友对“IE4”的“繁体语言包”的补充,但要注意:当采用浏览器本身的“繁体语言支持”功能(方法1)时,建议不要运行那些中文转换平台和转换工具,因为这可能会使乱码难以彻底解决。

手机光明网

光明网版权所有

光明日报社概况 | 关于光明网 | 报网动态 | 联系我们 | 法律声明 | 光明网邮箱 | 网站地图

光明网版权所有